package javaCode.chapter06;

public class ConstructorDetail {

    public static void main(String[] args) {

        Person11 p1 = new Person11("king",40);
        Person11 p2 = new Person11("Tom");
        System.out.println(p2.age);

        dog d1 = new dog();
    }
}

class dog{
    //如果程序员没有定义构造器，系统会自动给类生成一个默认无参构造器(也叫默认构造器)
    // 默认构造器
    // dog(){}
    //一旦定义了自己的构造器，默认的构造器就覆盖了，就不能再使用默认的无参构造器，\
    // 除非显式的定义一下。
    public dog(String dName){

    }
    dog(){ //显示的定义一下 无参构造器

    }

}

class Person11 {
    String name;
    int age;
    //第一个构造器
    public Person11(String pName, int pAge){
        name = pName;
        age = pAge;
    }
    //第二个构造器，只指定人名，不需要指定年龄
    public Person11(String pName){
        name = pName;
    }

}